/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package za.ac.cput.sevenpriciples.crp.conf;

import org.springframework.beans.factory.annotation.Configurable;
import org.springframework.context.annotation.Bean;
import za.ac.cput.sevenpriciples.crp.crp.compliance.Bonus;
import za.ac.cput.sevenpriciples.crp.crp.compliance.impl.PartTimeImp;
import za.ac.cput.sevenpriciples.crp.crp.compliance.impl.PermanentImp;
import za.ac.cput.sevenpriciples.crp.crp.compliance.impl.TemporaryImp;
import za.ac.cput.sevenpriciples.crp.crp.violation.impl.PartTime;
import za.ac.cput.sevenpriciples.crp.crp.violation.impl.PermanentImpl;
import za.ac.cput.sevenpriciples.crp.crp.violation.impl.Temporary;

/**
 *
 * @author 210227257
 */
@Configurable
public class AppConfig {
    @Bean(name = "permanent")
    public PermanentImpl permanent(){
        return new PermanentImpl();
    }
    
    @Bean(name = "partTime")
    public PartTime partTime(){
        return new PartTime();
    }
    
    @Bean(name = "temporary")
    public Temporary temporary(){
        return new Temporary();
    }
    
    @Bean(name = "permanentEmployee")
    public Bonus bonusPermanent(){
        return new PermanentImp();
    }
    
    @Bean(name = "temporaryEmployee")
    public Bonus bonusTemporary(){
        return new TemporaryImp();
    }
    
    @Bean(name = "partTimeEmployee")
    public Bonus bonusPartTime(){
        return new PartTimeImp();
    }
}
